package com.qijian.maindata.domain.query;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;

import com.qijian.common.utils.mybatis.WhereType;
import com.qijian.common.utils.mybatis.WhereTypeEnum;
import lombok.Data;
import java.util.Set;
import lombok.ToString;
import com.baomidou.mybatisplus.annotation.TableName;


/**
 * 客户投诉对象 查询条件类
 *
 * @author qijian
 * @date 2024-09-06
 */

@Data
@ToString
@TableName("main_customer_complaints")
public class CustomerComplaintsQuery {

    @WhereType(filed = "id")
    private Long id;
    @WhereType(filed = "id", type = WhereTypeEnum.IN)
    private Set<Long> ids;
    @WhereType(filed = "number")
    private String number;
    @WhereType(filed = "factory_custom",type = WhereTypeEnum.LIKE)
    private String factoryCustom;
    @WhereType(filed = "custom",type = WhereTypeEnum.LIKE)
    private String custom;
    @WhereType(filed = "factory",type = WhereTypeEnum.LIKE)
    private String factory;
    @WhereType(filed = "receive_date",type = WhereTypeEnum.BETWEEN)
    private Date[] receiveDate;
    @WhereType(filed = "project_machine_no",type = WhereTypeEnum.LIKE,tableName = "main_customer_complaints_project")
    private String projectMachineNo;
    @WhereType(filed = "item_name",type = WhereTypeEnum.LIKE)
    private String itemName;
    @WhereType(filed = "projectId")
    private String projectid;
    @WhereType(filed = "item_code")
    private String itemCode;
    @WhereType(filed = "material_number",type = WhereTypeEnum.LIKE)
    private String materialNumber;
    @WhereType(filed = "customer_ncr")
    private String customerNcr;
    @WhereType(filed = "ncr_code")
    private String ncrCode;
    @WhereType(filed = "quantity")
    private Long quantity;
    @WhereType(filed = "currency_type")
    private String currencyType;
    @WhereType(filed = "estimated_compensation")
    private BigDecimal estimatedCompensation;
    @WhereType(filed = "actual_compensation")
    private BigDecimal actualCompensation;
    @WhereType(filed = "user_id")
    private Long userId;
    @WhereType(filed = "user_name")
    private String userName;
    @WhereType(filed = "analysis")
    private String analysis;
    @WhereType(filed = "rectification_and_prevention")
    private String rectificationAndPrevention;
    @WhereType(filed = "remark")
    private String remark;
    @WhereType(filed = "close_date",type = WhereTypeEnum.BETWEEN)
    private Date[] closeDate;
    @WhereType(filed = "feedback")
    private String feedback;



}
